// vite.config.ts
import { fileURLToPath, URL } from "node:url";
import { resolve } from "path";
import { defineConfig, loadEnv } from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/vite/dist/node/index.js";
import vue from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/@vitejs/plugin-vue/dist/index.mjs";
import vueJsx from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/@vitejs/plugin-vue-jsx/dist/index.mjs";
import vueDevTools from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/vite-plugin-vue-devtools/dist/vite.mjs";
import { createHtmlPlugin } from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/vite-plugin-html/dist/index.mjs";
import AutoImport from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/unplugin-auto-import/dist/vite.js";
import Components from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/unplugin-vue-components/dist/vite.js";
import { ElementPlusResolver } from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/unplugin-vue-components/dist/resolvers.js";
import Icons from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/unplugin-icons/dist/vite.js";
import IconsResolver from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/unplugin-icons/dist/resolver.js";
import { createSvgIconsPlugin } from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/vite-plugin-svg-icons/dist/index.mjs";
import UnoCSS from "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/node_modules/unocss/dist/vite.mjs";
var __vite_injected_original_import_meta_url = "file:///D:/works/vue3/cpsc_ai/cpsc_ai_vue/cpsc-ai/vite.config.ts";
var pathSrc = fileURLToPath(new URL("./src", __vite_injected_original_import_meta_url));
var vite_config_default = defineConfig(({ mode }) => {
  const env = loadEnv(mode, process.cwd());
  return {
    base: "./",
    resolve: {
      alias: {
        "@": pathSrc
      }
    },
    // dev环境代理服务器设置
    server: {
      // 允许IP访问
      host: "0.0.0.0",
      // 应用端口
      port: Number(env.VITE_APP_PORT),
      // 运行是否自动打开浏览器
      open: true,
      proxy: {
        // 代理请求
        [env.VITE_APP_BASE_API]: {
          changeOrigin: true,
          // 接口地址
          target: env.VITE_APP_API_URL,
          rewrite: (path) => path.replace(new RegExp("^" + env.VITE_APP_BASE_API), "")
        },
        [env.VITE_APP_MOBILE_API]: {
          changeOrigin: true,
          // 接口地址
          target: env.VITE_APP_MOBILE_API_URL,
          rewrite: (path) => path.replace(new RegExp("^" + env.VITE_APP_MOBILE_API), "")
        }
      }
    },
    plugins: [
      vue(),
      vueJsx(),
      vueDevTools(),
      UnoCSS(),
      //html配置插件
      createHtmlPlugin({
        minify: true,
        //在html中添加入口文件
        entry: "src/main.ts",
        //注入打包时需要的变量
        inject: {
          data: {
            title: "cpsc-ai"
            // 出现在模版中的 <%- title %>
          }
        }
      }),
      AutoImport({
        // 自动导入 Vue 相关函数，如：ref, reactive, toRef 等
        imports: ["vue", "@vueuse/core", "pinia", "vue-router"],
        resolvers: [
          // 自动导入 Element Plus 相关函数
          ElementPlusResolver(),
          // 自动导入图标组件
          IconsResolver({})
        ],
        // 是否在 vue 模板中自动导入
        vueTemplate: true,
        // 指定自动导入函数TS类型声明文件路径 (false:关闭自动生成)
        dts: false
        // dts: "src/typings/auto-imports.d.ts",
      }),
      Components({
        resolvers: [
          // 自动导入 Element Plus 组件
          ElementPlusResolver(),
          // 自动注册图标组件
          IconsResolver({
            // element-plus图标库，其他图标库 https://icon-sets.iconify.design/
            enabledCollections: ["ep"]
          })
        ],
        // 自动导入自定义组件
        dirs: ["src/components", "src/**/components"],
        // 指定自动导入组件TS类型声明文件路径 (false:关闭自动生成)
        dts: false
        // dts: "src/typings/components.d.ts",
      }),
      Icons({
        // 自动安装图标库
        autoInstall: true
      }),
      //用于生成svg贴图
      createSvgIconsPlugin({
        // 指定需要缓存的图标文件夹
        iconDirs: [resolve(pathSrc, "assets/icons")],
        // 指定symbolId格式
        symbolId: "icon-[dir]-[name]"
      })
    ]
  };
});
export {
  vite_config_default as default
};
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJEOlxcXFx3b3Jrc1xcXFx2dWUzXFxcXGNwc2NfYWlcXFxcY3BzY19haV92dWVcXFxcY3BzYy1haVwiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiRDpcXFxcd29ya3NcXFxcdnVlM1xcXFxjcHNjX2FpXFxcXGNwc2NfYWlfdnVlXFxcXGNwc2MtYWlcXFxcdml0ZS5jb25maWcudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0Q6L3dvcmtzL3Z1ZTMvY3BzY19haS9jcHNjX2FpX3Z1ZS9jcHNjLWFpL3ZpdGUuY29uZmlnLnRzXCI7aW1wb3J0IHsgZmlsZVVSTFRvUGF0aCwgVVJMIH0gZnJvbSBcIm5vZGU6dXJsXCI7XHJcbmltcG9ydCB7IHJlc29sdmUgfSBmcm9tIFwicGF0aFwiO1xyXG5pbXBvcnQgeyBkZWZpbmVDb25maWcsIGxvYWRFbnYgfSBmcm9tIFwidml0ZVwiO1xyXG5pbXBvcnQgdHlwZSB7IFVzZXJDb25maWcsIENvbmZpZ0VudiB9IGZyb20gXCJ2aXRlXCI7XHJcbmltcG9ydCB2dWUgZnJvbSBcIkB2aXRlanMvcGx1Z2luLXZ1ZVwiO1xyXG5pbXBvcnQgdnVlSnN4IGZyb20gXCJAdml0ZWpzL3BsdWdpbi12dWUtanN4XCI7XHJcbmltcG9ydCB2dWVEZXZUb29scyBmcm9tIFwidml0ZS1wbHVnaW4tdnVlLWRldnRvb2xzXCI7XHJcbmltcG9ydCB7IGNyZWF0ZUh0bWxQbHVnaW4gfSBmcm9tIFwidml0ZS1wbHVnaW4taHRtbFwiO1xyXG5cclxuLy8gXHU4MUVBXHU1MkE4XHU1QkZDXHU1MTY1XHU3NkY4XHU1MTczXHU2M0QyXHU0RUY2XHJcbmltcG9ydCBBdXRvSW1wb3J0IGZyb20gXCJ1bnBsdWdpbi1hdXRvLWltcG9ydC92aXRlXCI7XHJcbmltcG9ydCBDb21wb25lbnRzIGZyb20gXCJ1bnBsdWdpbi12dWUtY29tcG9uZW50cy92aXRlXCI7XHJcbmltcG9ydCB7IEVsZW1lbnRQbHVzUmVzb2x2ZXIgfSBmcm9tIFwidW5wbHVnaW4tdnVlLWNvbXBvbmVudHMvcmVzb2x2ZXJzXCI7XHJcbmltcG9ydCBJY29ucyBmcm9tIFwidW5wbHVnaW4taWNvbnMvdml0ZVwiO1xyXG5pbXBvcnQgSWNvbnNSZXNvbHZlciBmcm9tIFwidW5wbHVnaW4taWNvbnMvcmVzb2x2ZXJcIjtcclxuaW1wb3J0IHsgY3JlYXRlU3ZnSWNvbnNQbHVnaW4gfSBmcm9tIFwidml0ZS1wbHVnaW4tc3ZnLWljb25zXCI7XHJcblxyXG5pbXBvcnQgVW5vQ1NTIGZyb20gXCJ1bm9jc3Mvdml0ZVwiO1xyXG5cclxuLy8gXHU2NTg3XHU0RUY2XHU4REVGXHU1Rjg0XHJcbmNvbnN0IHBhdGhTcmMgPSBmaWxlVVJMVG9QYXRoKG5ldyBVUkwoXCIuL3NyY1wiLCBpbXBvcnQubWV0YS51cmwpKTtcclxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lQ29uZmlnKCh7IG1vZGUgfTogQ29uZmlnRW52KTogVXNlckNvbmZpZyA9PiB7XHJcblx0Y29uc3QgZW52ID0gbG9hZEVudihtb2RlLCBwcm9jZXNzLmN3ZCgpKTtcclxuXHRyZXR1cm4ge1xyXG5cdFx0YmFzZTogXCIuL1wiLFxyXG5cdFx0cmVzb2x2ZToge1xyXG5cdFx0XHRhbGlhczoge1xyXG5cdFx0XHRcdFwiQFwiOiBwYXRoU3JjLCAgXHJcblx0XHRcdH0sXHJcblx0XHR9LFxyXG5cdFx0Ly8gZGV2XHU3M0FGXHU1ODgzXHU0RUUzXHU3NDA2XHU2NzBEXHU1MkExXHU1NjY4XHU4QkJFXHU3RjZFXHJcblx0XHRzZXJ2ZXI6IHtcclxuXHRcdFx0Ly8gXHU1MTQxXHU4QkI4SVBcdThCQkZcdTk1RUVcclxuXHRcdFx0aG9zdDogXCIwLjAuMC4wXCIsXHJcblx0XHRcdC8vIFx1NUU5NFx1NzUyOFx1N0FFRlx1NTNFM1xyXG5cdFx0XHRwb3J0OiBOdW1iZXIoZW52LlZJVEVfQVBQX1BPUlQpLFxyXG5cdFx0XHQvLyBcdThGRDBcdTg4NENcdTY2MkZcdTU0MjZcdTgxRUFcdTUyQThcdTYyNTNcdTVGMDBcdTZENEZcdTg5QzhcdTU2NjhcclxuXHRcdFx0b3BlbjogdHJ1ZSxcclxuXHRcdFx0cHJveHk6IHtcclxuXHRcdFx0XHQvLyBcdTRFRTNcdTc0MDZcdThCRjdcdTZDNDJcclxuXHRcdFx0XHRbZW52LlZJVEVfQVBQX0JBU0VfQVBJXToge1xyXG5cdFx0XHRcdFx0Y2hhbmdlT3JpZ2luOiB0cnVlLFxyXG5cdFx0XHRcdFx0Ly8gXHU2M0E1XHU1M0UzXHU1NzMwXHU1NzQwXHJcblx0XHRcdFx0XHR0YXJnZXQ6IGVudi5WSVRFX0FQUF9BUElfVVJMLFxyXG5cdFx0XHRcdFx0cmV3cml0ZTogKHBhdGgpID0+IHBhdGgucmVwbGFjZShuZXcgUmVnRXhwKFwiXlwiICsgZW52LlZJVEVfQVBQX0JBU0VfQVBJKSwgXCJcIiksXHJcblx0XHRcdFx0fSxcclxuXHRcdFx0XHRbZW52LlZJVEVfQVBQX01PQklMRV9BUEldOiB7XHJcblx0XHRcdFx0XHRjaGFuZ2VPcmlnaW46IHRydWUsXHJcblx0XHRcdFx0XHQvLyBcdTYzQTVcdTUzRTNcdTU3MzBcdTU3NDBcclxuXHRcdFx0XHRcdHRhcmdldDogZW52LlZJVEVfQVBQX01PQklMRV9BUElfVVJMLFxyXG5cdFx0XHRcdFx0cmV3cml0ZTogKHBhdGgpID0+IHBhdGgucmVwbGFjZShuZXcgUmVnRXhwKFwiXlwiICsgZW52LlZJVEVfQVBQX01PQklMRV9BUEkpLCBcIlwiKSxcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHR9LFxyXG5cdFx0fSxcclxuXHRcdHBsdWdpbnM6IFtcclxuXHRcdFx0dnVlKCksXHJcblx0XHRcdHZ1ZUpzeCgpLFxyXG5cdFx0XHR2dWVEZXZUb29scygpLFxyXG5cdFx0XHRVbm9DU1MoKSxcclxuXHRcdFx0Ly9odG1sXHU5MTREXHU3RjZFXHU2M0QyXHU0RUY2XHJcblx0XHRcdGNyZWF0ZUh0bWxQbHVnaW4oe1xyXG5cdFx0XHRcdG1pbmlmeTogdHJ1ZSxcclxuXHRcdFx0XHQvL1x1NTcyOGh0bWxcdTRFMkRcdTZERkJcdTUyQTBcdTUxNjVcdTUzRTNcdTY1ODdcdTRFRjZcclxuXHRcdFx0XHRlbnRyeTogXCJzcmMvbWFpbi50c1wiLFxyXG5cdFx0XHRcdC8vXHU2Q0U4XHU1MTY1XHU2MjUzXHU1MzA1XHU2NUY2XHU5NzAwXHU4OTgxXHU3Njg0XHU1M0Q4XHU5MUNGXHJcblx0XHRcdFx0aW5qZWN0OiB7XHJcblx0XHRcdFx0XHRkYXRhOiB7XHJcblx0XHRcdFx0XHRcdHRpdGxlOiBcImNwc2MtYWlcIiwgLy8gXHU1MUZBXHU3M0IwXHU1NzI4XHU2QTIxXHU3MjQ4XHU0RTJEXHU3Njg0IDwlLSB0aXRsZSAlPlxyXG5cdFx0XHRcdFx0fSxcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHR9KSxcclxuXHRcdFx0QXV0b0ltcG9ydCh7XHJcblx0XHRcdFx0Ly8gXHU4MUVBXHU1MkE4XHU1QkZDXHU1MTY1IFZ1ZSBcdTc2RjhcdTUxNzNcdTUxRkRcdTY1NzBcdUZGMENcdTU5ODJcdUZGMUFyZWYsIHJlYWN0aXZlLCB0b1JlZiBcdTdCNDlcclxuXHRcdFx0XHRpbXBvcnRzOiBbXCJ2dWVcIiwgXCJAdnVldXNlL2NvcmVcIiwgXCJwaW5pYVwiLCBcInZ1ZS1yb3V0ZXJcIl0sXHJcblx0XHRcdFx0cmVzb2x2ZXJzOiBbXHJcblx0XHRcdFx0XHQvLyBcdTgxRUFcdTUyQThcdTVCRkNcdTUxNjUgRWxlbWVudCBQbHVzIFx1NzZGOFx1NTE3M1x1NTFGRFx1NjU3MFxyXG5cdFx0XHRcdFx0RWxlbWVudFBsdXNSZXNvbHZlcigpLFxyXG5cdFx0XHRcdFx0Ly8gXHU4MUVBXHU1MkE4XHU1QkZDXHU1MTY1XHU1NkZFXHU2ODA3XHU3RUM0XHU0RUY2XHJcblx0XHRcdFx0XHRJY29uc1Jlc29sdmVyKHt9KSxcclxuXHRcdFx0XHRdLFxyXG5cdFx0XHRcdC8vIFx1NjYyRlx1NTQyNlx1NTcyOCB2dWUgXHU2QTIxXHU2NzdGXHU0RTJEXHU4MUVBXHU1MkE4XHU1QkZDXHU1MTY1XHJcblx0XHRcdFx0dnVlVGVtcGxhdGU6IHRydWUsXHJcblx0XHRcdFx0Ly8gXHU2MzA3XHU1QjlBXHU4MUVBXHU1MkE4XHU1QkZDXHU1MTY1XHU1MUZEXHU2NTcwVFNcdTdDN0JcdTU3OEJcdTU4RjBcdTY2MEVcdTY1ODdcdTRFRjZcdThERUZcdTVGODQgKGZhbHNlOlx1NTE3M1x1OTVFRFx1ODFFQVx1NTJBOFx1NzUxRlx1NjIxMClcclxuXHRcdFx0XHRkdHM6IGZhbHNlLFxyXG5cdFx0XHRcdC8vIGR0czogXCJzcmMvdHlwaW5ncy9hdXRvLWltcG9ydHMuZC50c1wiLFxyXG5cdFx0XHR9KSxcclxuXHRcdFx0Q29tcG9uZW50cyh7XHJcblx0XHRcdFx0cmVzb2x2ZXJzOiBbXHJcblx0XHRcdFx0XHQvLyBcdTgxRUFcdTUyQThcdTVCRkNcdTUxNjUgRWxlbWVudCBQbHVzIFx1N0VDNFx1NEVGNlxyXG5cdFx0XHRcdFx0RWxlbWVudFBsdXNSZXNvbHZlcigpLFxyXG5cdFx0XHRcdFx0Ly8gXHU4MUVBXHU1MkE4XHU2Q0U4XHU1MThDXHU1NkZFXHU2ODA3XHU3RUM0XHU0RUY2XHJcblx0XHRcdFx0XHRJY29uc1Jlc29sdmVyKHtcclxuXHRcdFx0XHRcdFx0Ly8gZWxlbWVudC1wbHVzXHU1NkZFXHU2ODA3XHU1RTkzXHVGRjBDXHU1MTc2XHU0RUQ2XHU1NkZFXHU2ODA3XHU1RTkzIGh0dHBzOi8vaWNvbi1zZXRzLmljb25pZnkuZGVzaWduL1xyXG5cdFx0XHRcdFx0XHRlbmFibGVkQ29sbGVjdGlvbnM6IFtcImVwXCJdLFxyXG5cdFx0XHRcdFx0fSksXHJcblx0XHRcdFx0XSxcclxuXHRcdFx0XHQvLyBcdTgxRUFcdTUyQThcdTVCRkNcdTUxNjVcdTgxRUFcdTVCOUFcdTRFNDlcdTdFQzRcdTRFRjZcclxuXHRcdFx0XHRkaXJzOiBbXCJzcmMvY29tcG9uZW50c1wiLCBcInNyYy8qKi9jb21wb25lbnRzXCJdLFxyXG5cdFx0XHRcdC8vIFx1NjMwN1x1NUI5QVx1ODFFQVx1NTJBOFx1NUJGQ1x1NTE2NVx1N0VDNFx1NEVGNlRTXHU3QzdCXHU1NzhCXHU1OEYwXHU2NjBFXHU2NTg3XHU0RUY2XHU4REVGXHU1Rjg0IChmYWxzZTpcdTUxNzNcdTk1RURcdTgxRUFcdTUyQThcdTc1MUZcdTYyMTApXHJcblx0XHRcdFx0ZHRzOiBmYWxzZSxcclxuXHRcdFx0XHQvLyBkdHM6IFwic3JjL3R5cGluZ3MvY29tcG9uZW50cy5kLnRzXCIsXHJcblx0XHRcdH0pLFxyXG5cdFx0XHRJY29ucyh7XHJcblx0XHRcdFx0Ly8gXHU4MUVBXHU1MkE4XHU1Qjg5XHU4OEM1XHU1NkZFXHU2ODA3XHU1RTkzXHJcblx0XHRcdFx0YXV0b0luc3RhbGw6IHRydWUsXHJcblx0XHRcdH0pLFxyXG5cdFx0XHQvL1x1NzUyOFx1NEU4RVx1NzUxRlx1NjIxMHN2Z1x1OEQzNFx1NTZGRVxyXG5cdFx0XHRjcmVhdGVTdmdJY29uc1BsdWdpbih7XHJcblx0XHRcdFx0Ly8gXHU2MzA3XHU1QjlBXHU5NzAwXHU4OTgxXHU3RjEzXHU1QjU4XHU3Njg0XHU1NkZFXHU2ODA3XHU2NTg3XHU0RUY2XHU1OTM5XHJcblx0XHRcdFx0aWNvbkRpcnM6IFtyZXNvbHZlKHBhdGhTcmMsIFwiYXNzZXRzL2ljb25zXCIpXSxcclxuXHRcdFx0XHQvLyBcdTYzMDdcdTVCOUFzeW1ib2xJZFx1NjgzQ1x1NUYwRlxyXG5cdFx0XHRcdHN5bWJvbElkOiBcImljb24tW2Rpcl0tW25hbWVdXCIsXHJcblx0XHRcdH0pLFxyXG5cdFx0XSxcclxuXHR9O1xyXG59KTtcclxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUF5VCxTQUFTLGVBQWUsV0FBVztBQUM1VixTQUFTLGVBQWU7QUFDeEIsU0FBUyxjQUFjLGVBQWU7QUFFdEMsT0FBTyxTQUFTO0FBQ2hCLE9BQU8sWUFBWTtBQUNuQixPQUFPLGlCQUFpQjtBQUN4QixTQUFTLHdCQUF3QjtBQUdqQyxPQUFPLGdCQUFnQjtBQUN2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
